From ebf25fdee68b9340433d7ab7622e2f74d3e3630e Mon Sep 17 00:00:00 2001 From: robertl Date: Thu, 13 Dec 2007 07:45:44 +0000 Subject: [PATCH] Read timestamps from KML Placemarks when we can. (TimeRanges are ignored.) --- kml.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/kml.c b/kml.c index b5e48ab78..6584de125 100644 --- a/kml.c +++ b/kml.c @@ -144,8 +144,8 @@ kml_read(void) } #else -static xg_callback wpt_s, wpt_e; -static xg_callback wpt_name, wpt_desc, wpt_coord, wpt_icon, trk_coord; +static xg_callback wpt_s, wpt_e; +static xg_callback wpt_name, wpt_desc, wpt_coord, wpt_icon, trk_coord, wpt_time; static xg_tag_mapping kml_map[] = { @@ -153,6 +153,7 @@ xg_tag_mapping kml_map[] = { { wpt_e, cb_end, "/Placemark" }, { wpt_name, cb_cdata, "/Placemark/name" }, { wpt_desc, cb_cdata, "/Placemark/description" }, + { wpt_time, cb_cdata, "/Placemark/TimeStamp/when" }, { wpt_coord, cb_cdata, "/Placemark/Point/coordinates" }, { wpt_icon, cb_cdata, "/Placemark/Style/Icon/href" }, { trk_coord, cb_cdata, "/Placemark/MultiGeometry/LineString/coordinates" }, @@ -202,6 +203,11 @@ void wpt_desc(const char *args, const char **unused) } } +void wpt_time(const char *args, const char **unused) +{ + wpt_tmp->creation_time = xml_parse_time(args, &wpt_tmp->microseconds); +} + void wpt_coord(const char *args, const char **attrv) { sscanf(args, "%lf,%lf,%lf", &wpt_tmp->longitude, &wpt_tmp->latitude, &wpt_tmp->altitude); -- 2.30.2